package me.dynamicarray;

import java.util.Arrays;
import java.util.Iterator;

public class Test1 {
    public static void main(String[] args) {
        DynamicArray da = new DynamicArray();

        //添加元素
        da.add(0, 5);
        da.add(1, 6);
        da.add(2, 7);
        da.add(3, 8);
        da.add(4, 8);
        da.add(5, 8);

        // 尾部添加元素
        da.addLast(10);

        // 查询元素
        System.out.println(da.get(2));

        // 删除元素
        System.out.println(da.remove(3));

        //通过toString方法直接打印
        //System.out.println(da.toString);效果一样
        System.out.println(da);
        System.out.println("------------------------------------");

        //通过toArray转换为数组后遍历
        int[] arr = da.toArray();
        //直接遍历arr
        for (int num : arr) {
            //这里的num代表数组中的每一个元素，而不是索引
            System.out.println(num + " ");
        }
        System.out.println();
        System.out.println("------------------------------------");

        //通过getSize()和get()方法
        for (int i = 0; i < da.getSize(); i++) {
            System.out.println(da.get(i) + " ");
        }
        System.out.println("------------------------------------");

        //迭代器遍历
        Iterator<Integer> it = da.iterator();
        while (it.hasNext()) {
            System.out.println(it.next() + " ");
        }

    }
}
